依赖库 | 作用 |
---|---|
libz.tbd | 解压缩 |
WebKit.framwork | 浏览器内核 |
Security.framework | 访问钥匙链 |
CoreTelephony.framework | 获取运营商 |
SystemConfiguration.framework | 获取网络状态 |
JavaScriptCore.framework | 支持js自定义错误功能 |
CoreGraphics.framework | 支持可视化命名功能 |
QuartzCore.framework | 支持可视化命名功能 |
CFNetwork.framework | 支持移动拨测功能 |
libresolv.tbd | 支持移动拨测功能 |
libc++.tbd | c++符号化 |
#import <tingyunApp/NBSAppAgent.h>
#import <tingyunApp/NBSAppAgent.h>
在工程「main.m」文件中的「main」方法中初始化 SDK
int main(int argc, char * argv[]) {
@autoreleasepool {
//Your_appkey从平台中获取
[NBSAppAgent startWithAppID:@"Your_appkey"];
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
}
}
在「AppDelegate.swift」的「application(_:didFinishLaunchingWithOptions:)」方法中初始化
若需要采集应用启动数据请参见采集应用启动参数。
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
NBSAppAgent.start(withAppID: "Your_appkey", location: true)
return true
}
开启可视化命名功能,可以通过在App应用内点选的方式为「原生页面」和「操作」进行重命名并在用户体验模块中展示。
出于兼容性考虑, 首次启动 SDK 仅在调试模式下开启全部功能模块,非调试模式下仅开启崩溃模块,可通过以下接口开启 SDK 的模块开关。
/*
SDK首次初始化由于尚未与基调听云平台交互,默认模块开关仅开启「崩溃模块」,可以通过开启「网络模块」和「用户体验模块」来采集应用首次启动数据。
@warning:调用该接口设置启动选项,SDK首次启动不受基调听云平台开关控制
*/
+ (void)setStartOption:(NBSOPTION)option;
//在SDK初始化之前调用, 首次启动开启网络、crash采集功能、用户体验分析。
[NBSAppAgent setStartOption:NBSOption_Net|NBSOption_Crash|NBS_OPTION_UI];
[NBSAppAgent startWithAppID:@"Your_appkey"];
通过添加「用户标识」可在基调听云报表平台通过该标识检索到具体用户的性能问题。
/*
设置用户标识符,不能超过64个字符,可以在任意位置多次调用(值覆盖)
@userId:唯一标识一个用户的信息
*/
+ (void)setUserIdentifier:(NSString *)userId;
- (void)viewDidLoad
{
[super viewDidLoad];
//用户标识可为邮箱、手机号等能够标识用户身份的信息,如xxx@tingyun.com
[NBSAppAgent setUserIdentifier:@"userId"];
}
嵌码完成后,可以在控制台中查看基调听云 SDK 日志输出结果用以判断嵌码是否成功
NBSAppAgent SDK_Version
---->start!
Success to connect to NBSSERVER